package com.quad.innovators.salesease.service.task;

import com.baomidou.mybatisplus.extension.service.IService;
import com.quad.innovators.salesease.common.result.PageResultBean;
import com.quad.innovators.salesease.model.entity.task.TaskDistribution;
import com.quad.innovators.salesease.model.form.task.TaskDistributionForm;
import com.quad.innovators.salesease.model.query.task.TaskDistributionQuery;
import com.quad.innovators.salesease.model.vo.task.TaskDistributionVO;

/**
 * @author cheng
 */
public interface TaskDistributionService extends IService<TaskDistribution> {

    /**
     * 条件分页查询任务发布数据
     * @param queryParams
     * @return
     */
    PageResultBean<TaskDistributionVO> listPaged(TaskDistributionQuery queryParams);

    /**
     * 新增
     * @param form
     * @return
     */
    boolean save(TaskDistributionForm form);

    /**
     * 修改
     * @param code
     * @param form
     * @return
     */
    boolean update(String code, TaskDistributionForm form);

    /**
     * 获取表单数据
     * @param code
     * @return
     */
    TaskDistributionForm getFormData(String code);

    /**
     * 更新状态
     * @param code 编码
     * @param status 状态
     * @param addressCode 执行位置编码，不为空时，只完成一个位置的任务
     * @return 结果
     */
    boolean updateStatus(String code, Integer status, Integer addressType, String addressCode);


}
